package com.uchiha.nova.core.model.dto;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 访客表 模型DTO
 *
 * @author Uchihashiamu
 */
@Data
@Schema(description = " 访客表 模型DTO")
@JsonIgnoreProperties(ignoreUnknown = true)
public class VisitorInfoDTO  implements Serializable {

	private static final long serialVersionUID = 1L;
	/**
	 * 主键id
	 */
    @Schema(description = "主键id")
	private Long id;
	/**
	 * 用户唯一id
	 */
    @Schema(description = "用户唯一id")
	private Long userId;
	/**
	 * 姓名
	 */
    @Schema(description = "姓名")
	private String visitorName;
	/**
	 * 方可类型
	 */
    @Schema(description = "方可类型")
	private Integer visitorType;
	/**
	 * 头像
	 */
    @Schema(description = "头像")
	private String avatar;
	/**
	 * 身份证号码
	 */
    @Schema(description = "身份证号码")
	private String idCard;
	/**
	 * 性别
	 */
    @Schema(description = "性别")
	private String gender;
	/**
	 * 电话
	 */
    @Schema(description = "电话")
	private String telPhone;
	/**
	 * 默认的组id
	 */
    @Schema(description = "默认的组id")
	private Long defaultMachineGroupId;
	/**
	 * 省代码
	 */
    @Schema(description = "省代码")
	private String provinceCode;
	/**
	 * 城市代码
	 */
    @Schema(description = "城市代码")
	private String cityCode;
	/**
	 * 区县代码
	 */
    @Schema(description = "区县代码")
	private String areaCode;
	/**
	 * 街道id
	 */
    @Schema(description = "街道id")
	private String streetCode;
	/**
	 * 第三方code
	 */
    @Schema(description = "第三方code")
	private String thirdCode;
	/**
	 * 状态0可用-1黑名单
	 */
    @Schema(description = "状态0可用-1黑名单")
	private Integer state;
	/**
	 * 进入黑名单时间
	 */
    @Schema(description = "进入黑名单时间")
	private LocalDateTime blackInTime;
	/**
	 * 黑名单原因
	 */
    @Schema(description = "黑名单原因")
	private String blackInReason;
	/**
	 * 备注
	 */
    @Schema(description = "备注")
	private String remark;
	/**
	 * 所属租户
	 */
    @Schema(description = "所属租户")
	private String tenantId;
}
